package com.cn.wanxi.servlet.user;

import com.alibaba.fastjson.JSONObject;
import com.cn.wanxi.model.UserModel;
import com.cn.wanxi.service.IUserService;
import com.cn.wanxi.service.impl.UserServiceImpl;

import javax.jws.WebResult;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;

@WebServlet("/userRegister")
public class UserRegiterServlet extends HttpServlet {
    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
//        1.处理乱码
        req.setCharacterEncoding("UTF-8");
        resp.setCharacterEncoding("UTF-8");
        resp.setContentType("application/json; charset=utf-8");
//        2.拿到页面传递过来的值
        String username = req.getParameter("username");
        String password = req.getParameter("password");
        String code = req.getParameter("code");
        String phone = req.getParameter("phone");
        String sex = req.getParameter("sex");
        String birthday = req.getParameter("birthday");
        String hobby = req.getParameter("hobby");
        hobby = hobby.replace("[", "").replace("]", "").replace(" ", "");
        String introduce = req.getParameter("introduce");
//        3.封装model
        UserModel userModel = new UserModel();
        userModel.setUsername(username);
        userModel.setPassword(password);
        userModel.setCode(code);
        userModel.setPhone(phone);
        userModel.setSex(sex);
        userModel.setBirthday(birthday);
        userModel.setHobby(hobby.replace("\"", ""));
        userModel.setIntroduce(introduce);

//        4.调用服务逻辑层
        IUserService iUserService = new UserServiceImpl();
//        5.得到返回数据
        int count = iUserService.add(userModel);
//        6.响应页面
//        if (count == 1) {
//            resp.sendRedirect("/back/login.html");
//        } else {
//            req.setAttribute("result", "注册失败");
//            resp.sendRedirect("/back/UserRegiter.jsp");
//        }
        JSONObject jsonObject = new JSONObject();
        jsonObject.put("count", count);//将整型转换为json对象
        resp.getWriter().println(jsonObject);//传递到页面的值

    }
    /**
     * 1.熟悉了一下sql基础
     * 2.梳理了用户注册逻辑
     * 3.跟着我们的类图一个一个实现
     * 4.正则表达式
     *
     */
}
